/**
 * 对比两种写法异同 
 */
export { }
interface Type1 {
    // 描述一个函数
    (name: string): any
    age: number
}

interface Type2 {
    // 描述一个对象,返回值为any
    a: (name: string) => any
}

// 如何消除t1的提示值(访问Type1的函数)
// let t1: Type1 = (name: string) => { }
// let t2: Type2 = { a: t1 }


// 访问t中已经包含了实例化Type1后age的值
let t: any = (name: string) => { }
t.age = 10;
let t1: Type1 = t